package com.test.design.pattern.prototype.demo;

/**
 * @ClasName Realizetype
 * @Descripution TODO
 * @Author leikw
 * @Date 2021/11/6 16:56
 * @Version V1.0
 */
public class Realizetype implements Cloneable {

    public Realizetype() {
        System.out.println("具体的原型对象创建完成！");
    }

    @Override
    public Realizetype clone() throws CloneNotSupportedException {
//        System.out.println("具体原型复制成功！");

        return (Realizetype) super.clone();
    }
}
//用一个已经创建的实例作为原型，通过复制该原型对象来创建一个和原型对象相同的新对象。

//原型模式包含如下角色：
//抽象原型类：规定了具体原型对象必须实现的的 clone() 方法。
//具体原型类：实现抽象原型类的 clone() 方法，它是可被复制的对象。
//访问类：使用具体原型类中的 clone() 方法来复制新的对象。
